home *** CD-ROM | disk | FTP | other *** search
-
- /*
- Postman's Sort (R) Version 1.0
- Copyright (c) Robert Ramey 1991. All Rights Reserved
- */
-
- /*********************************************************************
- data structure for collating sequence values
- **********************************************************************/
- typedef struct {
- unsigned int
- order, /* highest value in table */
- value[256]; /* table of weights fore 256 possible bytes */
- } SEQ;
-
- /*********************************************************************
- data structure and storage for holding keys as specified in the
- command line
- **********************************************************************/
-
- /* structure for a key */
- typedef struct {
- unsigned int rfield; /* index of field within record */
- unsigned int disp; /* starting point of key with in field */
- unsigned int size; /* maximum size of key */
- unsigned int key_type; /* flag to indicate type of field */
- BOOLEAN inverted; /* reverse the sense of sort for this key */
- SEQ *seq; /* pointer to structure of collating values */
- } KEY;
-
- #define DEFAULT 0 /* default type of alphanumeric key */
- #define SIGN 1 /* an optional 1 character sign */
- #define NUMERIC 2 /* digits to be expanded to fixed width */
- #define FRACTION 3 /* fractional part of a number */
-
- extern KEY key[]; /* table of keys specified in command line */
- extern unsigned int
- key_count, /* number of keys */
- tab_count;
- extern size_t
- *tab,
- data_offset,
- record_offset;
- #define blk_offset (record_offset-1)
-